Skill

FastAPI সেটআপ এবং ইনস্টলেশন

Web Development - ফাস্টএপিআই (FastAPI)
198

FastAPI দ্রুত এবং সহজভাবে সেটআপ করা যায়। এটি Python-এর জন্য একটি lightweight এবং high-performance ফ্রেমওয়ার্ক, যা ইনস্টলেশন ও কনফিগারেশনের জন্য খুব কম সময় নেয়।


সিস্টেমের প্রয়োজনীয়তা

FastAPI ব্যবহার করতে হলে আপনার সিস্টেমে নিচের জিনিসগুলো থাকতে হবে:

  • Python 3.7 বা তার পরবর্তী সংস্করণ।
  • একটি Package Manager, যেমন pip।

FastAPI ইনস্টলেশন

১. Python ভার্চুয়াল এনভায়রনমেন্ট তৈরি করা

প্রজেক্টের জন্য আলাদা ভার্চুয়াল এনভায়রনমেন্ট তৈরি করা একটি ভালো অভ্যাস। এটি বিভিন্ন প্রজেক্টের ডিপেনডেন্সি আলাদা রাখতে সাহায্য করে।

python -m venv env

এবং ভার্চুয়াল এনভায়রনমেন্ট সক্রিয় করুন:

  • Windows:

    .\env\Scripts\activate
    
  • macOS/Linux:

    source env/bin/activate
    

২. FastAPI এবং Uvicorn ইনস্টল করা

FastAPI চালাতে Uvicorn সার্ভার প্রয়োজন। ইনস্টল করতে নিচের কমান্ড ব্যবহার করুন:

pip install fastapi uvicorn

একটি FastAPI অ্যাপ তৈরি করা

FastAPI ইনস্টল করার পর একটি সাধারণ অ্যাপ তৈরি করতে নিচের ধাপগুলো অনুসরণ করুন।

১. প্রজেক্ট ফাইল তৈরি করা

প্রথমে একটি ফাইল তৈরি করুন, যেমন main.py

২. FastAPI অ্যাপ কোড লিখুন

main.py ফাইলে নিচের কোড লিখুন:

from fastapi import FastAPI

app = FastAPI()

@app.get("/")
def read_root():
    return {"message": "Welcome to FastAPI"}

@app.get("/items/{item_id}")
def read_item(item_id: int, q: str = None):
    return {"item_id": item_id, "q": q}

৩. অ্যাপ চালানো

Uvicorn ব্যবহার করে অ্যাপ চালানোর জন্য নিচের কমান্ডটি দিন:

uvicorn main:app --reload
  • main: আপনার ফাইলের নাম (main.py)।
  • app: FastAPI অ্যাপের অবজেক্ট।
  • --reload: ডেভেলপমেন্টে অটোমেটিক রিফ্রেশ করার জন্য।

FastAPI অ্যাপ অ্যাক্সেস করা

অ্যাপ চালু হলে কমান্ড লাইন থেকে আপনি দেখতে পাবেন:

Uvicorn running on http://127.0.0.1:8000

ব্রাউজারে গিয়ে এই URL-এ যান: **http://127.0.0.1:8000**। আপনি "Welcome to FastAPI" বার্তাটি দেখতে পাবেন।

স্বয়ংক্রিয় ডকুমেন্টেশন

FastAPI স্বয়ংক্রিয়ভাবে ডকুমেন্টেশন তৈরি করে। এগুলো অ্যাক্সেস করতে:


গুরুত্বপূর্ণ টিপস

  • ভার্চুয়াল এনভায়রনমেন্ট সক্রিয় রাখুন:
    বিভিন্ন প্রজেক্টের জন্য পৃথক এনভায়রনমেন্ট ব্যবহার করুন।
  • Python ডিপেনডেন্সি ফাইল:
    ইনস্টল করা প্যাকেজের তালিকা তৈরি করতে requirements.txt ব্যবহার করুন:

    pip freeze > requirements.txt
    
  • ডিপেনডেন্সি ইনস্টল করা:
    অন্য মেশিনে একই প্রজেক্ট সেটআপ করতে:

    pip install -r requirements.txt
    

FastAPI সেটআপ করার প্রক্রিয়া খুবই সহজ এবং দ্রুত। এটি শুরু করার জন্য প্রাথমিক কোড এবং নির্দেশনা যথেষ্ট। অ্যাপ ডেভেলপমেন্টে দ্রুত অগ্রসর হতে এটি একটি চমৎকার ফ্রেমওয়ার্ক।

Content added By

FastAPI ইনস্টলেশন (Python 3.7+)

207

FastAPI ইনস্টল করা খুব সহজ এবং Python 3.7 বা এর পরবর্তী সংস্করণে এটি পুরোপুরি সাপোর্টেড। এটি ইনস্টল করার পর আপনি দ্রুত API ডেভেলপমেন্ট শুরু করতে পারবেন।


প্রাথমিক শর্তসমূহ

  • Python 3.7 বা এর পরবর্তী সংস্করণ
    আপনার সিস্টেমে Python ইনস্টল থাকতে হবে। Python-এর ইনস্টলেশন যাচাই করতে নিচের কমান্ডটি ব্যবহার করুন:
python --version
  • Package Manager (pip)
    Python-এর প্যাকেজ ম্যানেজার pip ইনস্টল থাকতে হবে। যাচাই করতে:
pip --version

ইনস্টলেশন ধাপ

১. ভার্চুয়াল এনভায়রনমেন্ট তৈরি করা (ঐচ্ছিক কিন্তু সুপারিশকৃত)

প্রজেক্টের ডিপেনডেন্সি আলাদা রাখতে ভার্চুয়াল এনভায়রনমেন্ট ব্যবহার করুন। এটি তৈরি করতে:

python -m venv env

এবং সক্রিয় করুন:

  • Windows:

    .\env\Scripts\activate
    
  • macOS/Linux:

    source env/bin/activate
    

২. FastAPI এবং Uvicorn ইনস্টল করা

FastAPI চালানোর জন্য একটি ASGI সার্ভার প্রয়োজন। সাধারণত Uvicorn ব্যবহার করা হয়। ইনস্টল করতে:

pip install fastapi uvicorn

একটি FastAPI অ্যাপ তৈরি করা

উদাহরণ:

একটি সাধারণ FastAPI অ্যাপ তৈরি করতে নিচের ধাপগুলো অনুসরণ করুন:

ফাইল তৈরি করা:

একটি Python ফাইল তৈরি করুন, যেমন app.py

কোড লিখুন:
from fastapi import FastAPI

app = FastAPI()

@app.get("/")
def read_root():
    return {"message": "Hello, FastAPI!"}

@app.get("/items/{item_id}")
def read_item(item_id: int, q: str = None):
    return {"item_id": item_id, "query": q}

অ্যাপ চালানো

Uvicorn ব্যবহার করে অ্যাপ চালাতে:

uvicorn app:app --reload
  • app:app:
    প্রথম app হল ফাইলের নাম (উদাহরণে app.py) এবং দ্বিতীয় app হল FastAPI অ্যাপের অবজেক্ট।
  • --reload:
    ডেভেলপমেন্টে পরিবর্তনের সময় স্বয়ংক্রিয়ভাবে সার্ভার রিলোড করার জন্য।

ব্রাউজারে অ্যাপ দেখুন

সার্ভার চালু হলে, আপনি কমান্ড লাইনে দেখতে পাবেন:

Uvicorn running on http://127.0.0.1:8000

ব্রাউজারে গিয়ে http://127.0.0.1:8000 URL-এ যান। আপনি JSON আকারে {"message": "Hello, FastAPI!"} দেখতে পাবেন।


FastAPI এর স্বয়ংক্রিয় ডকুমেন্টেশন

FastAPI স্বয়ংক্রিয়ভাবে API ডকুমেন্টেশন তৈরি করে। এগুলো দেখতে:

  • Swagger UI:
    http://127.0.0.1:8000/docs
    এটি API টেস্টিং এবং ইন্টারঅ্যাক্টিভ ডকুমেন্টেশনের জন্য উপযুক্ত।
  • ReDoc:
    http://127.0.0.1:8000/redoc
    এটি API ডকুমেন্টেশনকে সুন্দরভাবে প্রদর্শন করে।

ডিপেনডেন্সি ফাইল তৈরি (ঐচ্ছিক)

ইনস্টল করা প্যাকেজগুলো সংরক্ষণ করতে requirements.txt তৈরি করুন:

pip freeze > requirements.txt

অন্য মেশিনে একই প্যাকেজ ইনস্টল করতে:

pip install -r requirements.txt

FastAPI ইনস্টল করা এবং একটি বেসিক API অ্যাপ তৈরি করা সহজ। এটি Python 3.7+ সংস্করণের জন্য উপযোগী এবং ডেভেলপমেন্টে দ্রুত অগ্রগতি নিশ্চিত করে।

Content added By

Uvicorn ইনস্টল এবং সেটআপ

220

Uvicorn হলো একটি lightning-fast ASGI (Asynchronous Server Gateway Interface) সার্ভার, যা Python-ভিত্তিক অ্যাসিঙ্ক্রোনাস ওয়েব অ্যাপ্লিকেশন চালানোর জন্য ব্যবহৃত হয়। FastAPI অ্যাপ চালানোর জন্য Uvicorn খুবই গুরুত্বপূর্ণ।


সিস্টেমের প্রয়োজনীয়তা

  • Python 3.7 বা এর পরবর্তী সংস্করণ।
  • প্যাকেজ ম্যানেজার pip

Uvicorn ইনস্টলেশন

Uvicorn ইনস্টল করতে pip ব্যবহার করুন:

pip install uvicorn

Uvicorn ইনস্টল হওয়ার পর এর সংস্করণ যাচাই করতে:

uvicorn --version

ভার্চুয়াল এনভায়রনমেন্টে ইনস্টল (ঐচ্ছিক কিন্তু সুপারিশকৃত)

প্রজেক্টের ডিপেনডেন্সি আলাদা রাখতে ভার্চুয়াল এনভায়রনমেন্ট তৈরি করুন:

python -m venv env

এবং সক্রিয় করুন:

  • Windows:

    .\env\Scripts\activate
    
  • macOS/Linux:

    source env/bin/activate
    

এরপর Uvicorn ইনস্টল করুন:

pip install uvicorn

একটি উদাহরণ FastAPI অ্যাপ চালানো

FastAPI অ্যাপ কোড

একটি ফাইল তৈরি করুন, যেমন app.py, এবং নিচের কোড লিখুন:

from fastapi import FastAPI

app = FastAPI()

@app.get("/")
def read_root():
    return {"message": "Hello, Uvicorn!"}

@app.get("/items/{item_id}")
def read_item(item_id: int, q: str = None):
    return {"item_id": item_id, "query": q}

Uvicorn ব্যবহার করে অ্যাপ চালানো

এখন Uvicorn ব্যবহার করে অ্যাপ চালান:

uvicorn app:app --reload
  • app:app:
    প্রথম app হল ফাইলের নাম (app.py), এবং দ্বিতীয় app হল FastAPI অ্যাপের অবজেক্ট।
  • --reload:
    ডেভেলপমেন্টে পরিবর্তনের সময় স্বয়ংক্রিয়ভাবে সার্ভার রিলোড করার জন্য।

ব্রাউজারে অ্যাপ অ্যাক্সেস করা

কমান্ড লাইন আউটপুটে একটি বার্তা দেখতে পাবেন:

Uvicorn running on http://127.0.0.1:8000

ব্রাউজারে গিয়ে http://127.0.0.1:8000 এ গেলে অ্যাপটি কাজ করছে কিনা তা যাচাই করতে পারবেন।


Uvicorn সার্ভারের অতিরিক্ত কনফিগারেশন

১. পোর্ট পরিবর্তন করা

ডিফল্ট পোর্ট পরিবর্তন করতে --port ফ্ল্যাগ ব্যবহার করুন:

uvicorn app:app --reload --port 9000

২. হোস্ট পরিবর্তন করা

ডিফল্টভাবে Uvicorn localhost এ চলে। অন্য ডিভাইস থেকে অ্যাপ অ্যাক্সেস করতে 0.0.0.0 হোস্ট ব্যবহার করুন:

uvicorn app:app --host 0.0.0.0 --reload

৩. প্রোডাকশন মোড

--reload ডেভেলপমেন্টের জন্য। প্রোডাকশনে ব্যবহার করতে এটি বাদ দিন এবং অতিরিক্ত অপশন প্রয়োগ করুন:

uvicorn app:app --host 0.0.0.0 --port 80

Docker-এ Uvicorn ব্যবহার (ঐচ্ছিক)

Uvicorn Docker কন্টেইনারে চালাতে পারেন। Dockerfile উদাহরণ:

FROM python:3.9-slim

WORKDIR /app

COPY requirements.txt requirements.txt
RUN pip install -r requirements.txt

COPY . .

CMD ["uvicorn", "app:app", "--host", "0.0.0.0", "--port", "80"]

এরপর Docker কন্টেইনার তৈরি করে চালান।


Uvicorn সেটআপ করা খুবই সহজ, এবং এটি FastAPI অ্যাপ চালানোর জন্য আদর্শ। ডেভেলপমেন্ট এবং প্রোডাকশন উভয়ের জন্য Uvicorn নির্ভরযোগ্য এবং উচ্চ কার্যক্ষম।

Content added By

FastAPI এর জন্য প্রজেক্ট তৈরি করা

187

FastAPI দিয়ে একটি প্রজেক্ট তৈরি করা সহজ এবং কাঠামোগতভাবে সঠিকভাবে প্রজেক্ট সাজালে বড় প্রজেক্ট পরিচালনা করা আরও কার্যকর হয়। এখানে একটি FastAPI প্রজেক্ট তৈরির প্রক্রিয়া ধাপে ধাপে ব্যাখ্যা করা হয়েছে।


ধাপ ১: ভার্চুয়াল এনভায়রনমেন্ট সেটআপ

ভার্চুয়াল এনভায়রনমেন্ট তৈরি করুন

প্রজেক্টের ডিপেনডেন্সি আলাদা রাখতে একটি ভার্চুয়াল এনভায়রনমেন্ট তৈরি করুন:

python -m venv env

ভার্চুয়াল এনভায়রনমেন্ট সক্রিয় করুন

  • Windows:

    .\env\Scripts\activate
    
  • macOS/Linux:

    source env/bin/activate
    

ধাপ ২: FastAPI এবং Uvicorn ইনস্টল করা

FastAPI এবং Uvicorn ইনস্টল করতে নিচের কমান্ডটি চালান:

pip install fastapi uvicorn

ধাপ ৩: প্রজেক্ট ফোল্ডার স্ট্রাকচার তৈরি করা

প্রস্তাবিত স্ট্রাকচার

my_fastapi_project/
├── app/
│   ├── main.py
│   ├── routes/
│   │   ├── __init__.py
│   │   ├── example_routes.py
│   ├── models/
│   │   ├── __init__.py
│   │   ├── example_models.py
│   ├── schemas/
│   │   ├── __init__.py
│   │   ├── example_schemas.py
│   ├── database.py
│   ├── __init__.py
├── requirements.txt

ধাপ ৪: বেসিক ফাইল এবং কোড তৈরি করা

main.py

এটি মূল ফাইল যেখানে অ্যাপটি ডিফাইন করা হবে:

from fastapi import FastAPI
from app.routes import example_routes

app = FastAPI()

# Routes
app.include_router(example_routes.router)

@app.get("/")
def read_root():
    return {"message": "Welcome to FastAPI Project!"}

routes/example_routes.py

এটি রাউটগুলোকে সাজানোর জন্য ব্যবহার করা হয়:

from fastapi import APIRouter

router = APIRouter()

@router.get("/example")
def get_example():
    return {"message": "This is an example route"}

models/example_models.py

এটি ডাটাবেসের মডেল ডিফাইন করতে ব্যবহার করা হবে। উদাহরণস্বরূপ:

# Example of a database model (if using SQLAlchemy)
from sqlalchemy import Column, Integer, String
from app.database import Base

class ExampleModel(Base):
    __tablename__ = "examples"

    id = Column(Integer, primary_key=True, index=True)
    name = Column(String, index=True)

schemas/example_schemas.py

এটি ডাটা ভ্যালিডেশন এবং পায়ডান্টিক (Pydantic) স্কিমার জন্য ব্যবহৃত হয়:

from pydantic import BaseModel

class ExampleSchema(BaseModel):
    name: str
    description: str

    class Config:
        orm_mode = True

database.py

এটি ডাটাবেস সংযোগ পরিচালনা করার জন্য:

from sqlalchemy import create_engine
from sqlalchemy.ext.declarative import declarative_base
from sqlalchemy.orm import sessionmaker

SQLALCHEMY_DATABASE_URL = "sqlite:///./test.db"

engine = create_engine(SQLALCHEMY_DATABASE_URL, connect_args={"check_same_thread": False})
SessionLocal = sessionmaker(autocommit=False, autoflush=False, bind=engine)
Base = declarative_base()

ধাপ ৫: ডিপেনডেন্সি লিস্ট সংরক্ষণ করা

আপনার প্রজেক্টে ব্যবহৃত সব প্যাকেজ সংরক্ষণ করতে:

pip freeze > requirements.txt

ধাপ ৬: অ্যাপ চালানো

Uvicorn ব্যবহার করে অ্যাপ চালানোর জন্য:

uvicorn app.main:app --reload
  • app.main:app:
    app ফোল্ডারে থাকা main.py ফাইলের app অবজেক্ট।
  • --reload:
    ডেভেলপমেন্টে অটোমেটিক রিফ্রেশ।

ধাপ ৭: ব্রাউজারে অ্যাপ অ্যাক্সেস করা

অ্যাপ চালু হলে ব্রাউজারে গিয়ে:


সার্বিক গাইডলাইন

  • প্রজেক্টের ফোল্ডার স্ট্রাকচার মডুলার করুন যাতে বড় প্রজেক্ট পরিচালনা সহজ হয়।
  • Pydantic ব্যবহার করে ইনপুট এবং আউটপুট যাচাই নিশ্চিত করুন।
  • ডাটাবেস সংযোগ এবং লজিক আলাদা ফাইল বা মডিউলে রাখুন।
  • ভার্চুয়াল এনভায়রনমেন্ট ব্যবহারের মাধ্যমে ডিপেনডেন্সি আলাদা রাখুন।

FastAPI দিয়ে তৈরি প্রজেক্টে এই কাঠামো আপনাকে দ্রুত এবং কার্যকর ডেভেলপমেন্টে সহায়তা করবে।

Content added By

প্রথম API এন্ডপয়েন্ট তৈরি করা

226

FastAPI দিয়ে একটি API এন্ডপয়েন্ট তৈরি করা খুবই সহজ। এখানে প্রথম API এন্ডপয়েন্ট তৈরি করার ধাপগুলো ব্যাখ্যা করা হয়েছে।


ধাপ ১: ফোল্ডার এবং ফাইল তৈরি করা

প্রথমে আপনার প্রজেক্টের জন্য একটি ফোল্ডার তৈরি করুন এবং এর মধ্যে একটি Python ফাইল তৈরি করুন। উদাহরণস্বরূপ:

my_first_fastapi/
└── main.py

ধাপ ২: FastAPI ইনস্টল করা

FastAPI এবং Uvicorn ইনস্টল করতে pip ব্যবহার করুন:

pip install fastapi uvicorn

ধাপ ৩: প্রথম API এন্ডপয়েন্ট তৈরি করা

main.py ফাইলে নিচের কোড লিখুন:

from fastapi import FastAPI

# অ্যাপ অবজেক্ট তৈরি
app = FastAPI()

# রুট এন্ডপয়েন্ট
@app.get("/")
def read_root():
    return {"message": "Hello, FastAPI!"}

# ডাইনামিক এন্ডপয়েন্ট
@app.get("/items/{item_id}")
def read_item(item_id: int, q: str = None):
    return {"item_id": item_id, "query": q}

কোড ব্যাখ্যা:

  1. FastAPI():
    FastAPI অ্যাপ তৈরি করার জন্য একটি অবজেক্ট।
  2. ডেকোরেটর (@app.get):
    এন্ডপয়েন্ট এবং HTTP মেথড (GET) সংজ্ঞায়িত করতে ব্যবহৃত হয়।
  3. / এন্ডপয়েন্ট:
    এটি রুট এন্ডপয়েন্ট, যা ব্রাউজারে http://127.0.0.1:8000 তে দেখাবে {"message": "Hello, FastAPI!"}
  4. ডাইনামিক এন্ডপয়েন্ট /items/{item_id}:
    একটি ডাইনামিক এন্ডপয়েন্ট যেখানে item_id প্যারামিটার পাঠানো যায়।

ধাপ ৪: অ্যাপ চালানো

Uvicorn ব্যবহার করে অ্যাপ চালানোর জন্য:

uvicorn main:app --reload

আর্গুমেন্ট ব্যাখ্যা:

  • main:app:
    main.py ফাইলে থাকা app অবজেক্ট।
  • --reload:
    কোডে কোনো পরিবর্তন হলে স্বয়ংক্রিয়ভাবে সার্ভার রিলোড করবে।

ধাপ ৫: ব্রাউজারে API পরীক্ষা করা

রুট এন্ডপয়েন্ট:

ব্রাউজারে গিয়ে http://127.0.0.1:8000/ তে দেখবেন:

{
  "message": "Hello, FastAPI!"
}

ডাইনামিক এন্ডপয়েন্ট:

http://127.0.0.1:8000/items/5?q=test তে দেখবেন:

{
  "item_id": 5,
  "query": "test"
}

ধাপ ৬: স্বয়ংক্রিয় ডকুমেন্টেশন পরীক্ষা করা

FastAPI স্বয়ংক্রিয়ভাবে API ডকুমেন্টেশন তৈরি করে। এটি দেখতে:

  • Swagger UI:
    http://127.0.0.1:8000/docs
    এখানে ইন্টারেক্টিভভাবে API টেস্ট করতে পারবেন।
  • ReDoc:
    http://127.0.0.1:8000/redoc
    এখানে API এর বিস্তারিত তথ্য দেখবেন।

এই পদ্ধতিতে কী শিখলেন:

  • FastAPI দিয়ে কিভাবে একটি অ্যাপ তৈরি করবেন।
  • কিভাবে রুট এবং ডাইনামিক এন্ডপয়েন্ট তৈরি করবেন।
  • Uvicorn ব্যবহার করে API চালাবেন এবং ব্রাউজারে পরীক্ষা করবেন।
  • স্বয়ংক্রিয় ডকুমেন্টেশনের মাধ্যমে API এর বৈশিষ্ট্য দেখতে পারবেন।

FastAPI দিয়ে প্রথম API এন্ডপয়েন্ট তৈরি করা এত সহজ! এখন আপনি বড় এবং জটিল API প্রজেক্ট তৈরি করতে প্রস্তুত।

Content added By

FastAPI এর ডকুমেন্টেশন (Swagger UI এবং ReDoc) পরিচিতি

161

FastAPI স্বয়ংক্রিয়ভাবে API ডকুমেন্টেশন তৈরি করে, যা ডেভেলপমেন্ট ও টেস্টিংকে অনেক সহজ করে তোলে। FastAPI এর ডকুমেন্টেশন দুটি ফরম্যাটে সরবরাহ করে:

  1. Swagger UI
  2. ReDoc

Swagger UI

Swagger UI হলো FastAPI দ্বারা স্বয়ংক্রিয়ভাবে তৈরি করা একটি ইন্টারেক্টিভ ডকুমেন্টেশন টুল। এটি OpenAPI স্পেসিফিকেশনের ভিত্তিতে API এর সব এন্ডপয়েন্ট এবং তাদের ফিচার প্রদর্শন করে।

বৈশিষ্ট্য:

  • ইন্টারেক্টিভ টেস্টিং:
    ডকুমেন্টেশনের মধ্যেই API রিকোয়েস্ট পাঠানো এবং রেসপন্স দেখা যায়।
  • সহজ নেভিগেশন:
    প্রতিটি এন্ডপয়েন্টের বিস্তারিত প্রদর্শন করে, যেমন ইনপুট প্যারামিটার, আউটপুট, এবং স্ট্যাটাস কোড।
  • ব্যবহারকারীবান্ধব:
    নতুন এবং অভিজ্ঞ ডেভেলপার উভয়ের জন্যই সহজে ব্যবহারযোগ্য।

Swagger UI অ্যাক্সেস:

FastAPI অ্যাপ চালু করার পর Swagger UI ডকুমেন্টেশন দেখতে ব্রাউজারে যান:
http://127.0.0.1:8000/docs


ReDoc

ReDoc একটি আরও বিস্তারিত ডকুমেন্টেশন টুল, যা API এর গঠন ও ফিচারগুলো আরও পরিষ্কারভাবে উপস্থাপন করে। এটি ডেভেলপমেন্ট দল এবং API ব্যবহারকারীদের জন্য বিশেষভাবে কার্যকর।

বৈশিষ্ট্য:

  • বিস্তৃত ডকুমেন্টেশন:
    প্রতিটি এন্ডপয়েন্টের বিস্তারিত তথ্য, যেমন ইনপুট ফিল্ড, ডাটা টাইপ, এবং সিকিউরিটি প্রটোকল।
  • উন্নত প্রেজেন্টেশন:
    প্রতিটি ফিচার সুন্দরভাবে গঠিত।
  • মোবাইল-বান্ধব:
    মোবাইল ডিভাইসেও সহজে দেখা যায়।

ReDoc অ্যাক্সেস:

FastAPI অ্যাপ চালু করার পর ReDoc ডকুমেন্টেশন দেখতে ব্রাউজারে যান:
http://127.0.0.1:8000/redoc


ডকুমেন্টেশন উদাহরণ

উদাহরণস্বরূপ, যদি আপনার অ্যাপ এই রকম কোড দিয়ে তৈরি হয়:

from fastapi import FastAPI

app = FastAPI()

@app.get("/")
def read_root():
    return {"message": "Hello, FastAPI!"}

@app.get("/items/{item_id}")
def read_item(item_id: int, q: str = None):
    return {"item_id": item_id, "query": q}

Swagger UI এন্ডপয়েন্ট:

http://127.0.0.1:8000/docs
এটি দেখাবে:

  • / রুট এন্ডপয়েন্ট
  • /items/{item_id} ডাইনামিক এন্ডপয়েন্ট

ReDoc এন্ডপয়েন্ট:

http://127.0.0.1:8000/redoc
এটি একই তথ্য আরও বিস্তারিত এবং গঠিত আকারে প্রদর্শন করবে।


কাস্টমাইজেশন

FastAPI এর ডকুমেন্টেশন কাস্টমাইজ করতে পারবেন:

  • ডকুমেন্টেশনের শিরোনাম:
    অ্যাপ অবজেক্ট তৈরি করার সময় title প্যারামিটার ব্যবহার করুন:

    app = FastAPI(title="My FastAPI Application")
    
  • ডকুমেন্টেশনের বিবরণ:
    description প্যারামিটার যোগ করুন:

    app = FastAPI(description="This is a sample FastAPI application")
    
  • ডকুমেন্টেশন অফ করা:
    Swagger UI বা ReDoc বন্ধ করতে:

    app = FastAPI(docs_url=None, redoc_url=None)
    

Swagger UI এবং ReDoc এর তুলনা

বৈশিষ্ট্যSwagger UIReDoc
ব্যবহারকারীবান্ধবতাসহজ এবং ইন্টারেক্টিভবিস্তারিত এবং গঠিত
ইন্টারেক্টিভ টেস্টিংহ্যাঁনা
উন্নত প্রেজেন্টেশনসাধারণউন্নত
মোবাইল সাপোর্টসীমিতসম্পূর্ণ মোবাইল-বান্ধব

FastAPI এর স্বয়ংক্রিয় ডকুমেন্টেশন ডেভেলপারদের জন্য একটি বড় সুবিধা। Swagger UI সহজে API পরীক্ষা করতে দেয়, আর ReDoc বিস্তারিত এবং প্রেজেন্টেশন-বান্ধব ডকুমেন্টেশন সরবরাহ করে। উভয় ডকুমেন্টেশন টুল FastAPI এর শক্তিশালী এবং ব্যবহারবান্ধব বৈশিষ্ট্যকে আরও উন্নত করে।

Content added By
Promotion
NEW SATT AI এখন আপনাকে সাহায্য করতে পারে।

Are you sure to start over?

Loading...